Systems and methods for facilitating efficient vertical handoffs in a wireless communication system

ABSTRACT

Systems and methods are provided for performing efficient vertical handoffs in a wireless user device are provided. The user device can comprise a mobile phone, computer table, handheld computer, or other computer system capable of connecting to more than one mobile wireless network that use different wireless communication protocols. Various efficient scanning methods are disclosed that are efficient in terms of battery usage, thermal performance, processing power, throughput performance, or a combination thereof.

FIELD OF THE INVENTION

The present invention generally relates to the field of wirelesscommunication systems and more specifically to systems and methods forperforming vertical handoffs between wireless networks.

BACKGROUND

The 3rd Generation Mobile Telecommunications standards (3G) forproviding wireless mobile voice and data communications is being slowlyreplaced by its successor 4th Generation Mobile Telecommunications (4G).Mobile carriers have begun to upgrade their 3G networks to provide 4Gcoverage, but the transition to 4G coverage will not occur overnight.Instead, mobile carriers have been upgrading portions of their networksto provide 4G service while the rest of the networks still operate usingthe 3G standards. As a result, subscribers may encounter parts of thenetwork that provide 3G services while other portions of the networkprovide for 4G services. Furthermore, a subscriber who has established a3G voice and/or data connection with the network may move from an areaof the network where 3G services are provided to an area where 4Gservices are provided. Alternatively, a subscriber who has established a4G voice and/or data connection with the network may move from an areaof the network where 4G services are provided to an area where only 3Gservices are provided. The network and/or the subscriber's user deviceneeds to be able recognize that this situation is about to occur and beable to complete a seamless vertical handoff from a first base stationto a second base station.

Current methods for identifying whether 4G connectivity is available arebased on an unconditional scanning algorithm that continuously searchesfor the 4G network with back off when there is no 4G detected. Thismethod is generally not efficient since the scanning consumes additionalpower. Continuous scanning can seriously degrade battery life of amobile device. Furthermore, the back off algorithm can cause the mobiledevice to not detect a 4G network in a mobile situation where the usermoves the device from an area that has no 4G coverage into an area thathas 4G coverage. As a result, the device can enter into an area where 4Gcoverage is available, but the device does not detect the 4G coverageand initiate a handoff.

SUMMARY

Systems and methods are provided for facilitating efficient verticalhandoffs Systems and methods are provided for performing efficientvertical handoffs in a wireless user device are provided.

According to one aspect, a method for managing network connectivity of awireless device is provided. The method includes the steps of scanningfor a signal of a first wireless network while the wireless device isconnected to a second wireless network, the first wireless network andthe second wireless network being configured to operate using differentwireless communication protocols; executing a vertical handoff from thesecond wireless network to the first wireless network if the signal ofthe first wireless network is detected; operating the wireless device ina scanning mode if the signal of the first wireless network is notdetected, wherein operating the wireless device in the scanning modefurther comprises: collecting information about the location of thewireless device, estimating mobility of the wireless device based on thelocation information, determining whether the wireless device is mobile,scanning for the signal of the first wireless network at a rateproportional to a rate of mobility associated with the wireless deviceif the wireless device is mobile, and scanning for the signal of thefirst wireless network at a reduced rate if the wireless device is notmobile.

According to still another aspect, method for managing networkconnectivity of a wireless device is provided where the wireless deviceis connected to a first wireless network and is configured to scan for asignal of a second wireless network. The first wireless network and thesecond wireless network are configured to operate using differentwireless communication protocols. The method includes the steps ofscanning for a signal of the second wireless network while the wirelessdevice is connected to the first wireless network, collecting locationinformation about the location of the wireless device; comparing thelocation information to coverage map information that indicates wherecoverage for a second wireless network is available; determining whetherthe wireless device is located in a coverage area of the second wirelessnetwork; scanning for a signal of a second wireless network if thewireless device is located in a coverage area of the second wirelessnetwork; executing a vertical handoff from the second wireless networkto the first wireless network if the signal of the first wirelessnetwork is detected; and operating the wireless device on the firstwireless network for a predetermined period of time before againscanning for the signal of the second wireless network.

According to still another aspect, a method for managing networkconnectivity of a wireless device from a remote server is provided wherethe wireless device is connected to a first wireless network and isconfigured to scan for a signal of a second wireless network. The firstwireless network and the second wireless network are configured tooperate using different wireless communication protocols. The server isconfigured to perform the steps of: determining the location of a thewireless device; accessing coverage map information that indicates wherecoverage for the second wireless network is available; comparing thelocation information to coverage map information that indicates wherecoverage for a second wireless network is available; and sending anetwork search command to the user device to scan for a signal of thesecond wireless network and to initiate a vertical handoff from thefirst network to the second network if the signal from the secondwireless network is detected.

According to still another aspect, a method for managing networkconnectivity of a wireless device from a remote server is provided wherethe wireless device is connected to a first wireless network and isconfigured to scan for a signal of a second wireless network. The firstwireless network and the second wireless network are configured tooperate using different wireless communication protocols. The wirelessdevice is configured to perform the steps of: receiving a network searchcommand from a remote server instructing the wireless device to scan fora signal of the second wireless network and to initiate a verticalhandoff from the first network to the second network if the signal fromthe second wireless network is detected; scanning for a signal of asecond wireless network if the wireless device is located in a coveragearea of the second wireless network; executing a vertical handoff fromthe second wireless network to the first wireless network if the signalof the first wireless network is detected; and operating the wirelessdevice in a scanning mode if the signal of the first wireless network isnot detected.

According to still another aspect, a wireless device configured toconnect a first wireless network and a second wireless network isprovided. The first wireless network and the second wireless network areconfigured to operate using different wireless communication protocols.The wireless device includes a mobile network interface, anon-transitory computer readable medium configured to store executableprogrammed modules, a processor communicatively coupled with thenon-transitory computer readable medium configured to execute programmedmodules stored therein, a mobile network interface module stored in thenon-transitory computer readable medium, and a connection module storedin the non-transitory computer readable medium. The mobile networkinterface module is configured to manage data communications between thewireless router and the wireless access point user devices using themobile network interface. The connection modules is configured toperform the steps of: scanning for a signal of the second wirelessnetwork while the wireless device is connected to the first wirelessnetwork, collecting location information about the location of thewireless device; comparing the location information to coverage mapinformation that indicates where coverage for a second wireless networkis available; determining whether the wireless device is located in acoverage area of the second wireless network; scanning for a signal of asecond wireless network if the wireless device is located in a coveragearea of the second wireless network; executing a vertical handoff fromthe second wireless network to the first wireless network if the signalof the first wireless network is detected; and operating the wirelessdevice on the first wireless network for a predetermined period of timebefore again scanning for the signal of the second wireless network.

According to still another aspect, a wireless device configured toconnect a first wireless network and a second wireless network isprovided. The first wireless network and the second wireless network areconfigured to operate using different wireless communication protocols.The wireless device includes a mobile network interface, anon-transitory computer readable medium configured to store executableprogrammed modules, a processor communicatively coupled with thenon-transitory computer readable medium configured to execute programmedmodules stored therein, a mobile network interface module stored in thenon-transitory computer readable medium, and a connection module storedin the non-transitory computer readable medium. The mobile networkinterface module is configured to manage data communications between thewireless router and the wireless access point user devices using themobile network interface. The connection modules is configured toperform the steps of: scanning for a signal of a first wireless networkwhile the wireless device is connected to a second wireless network, thefirst wireless network and the second wireless network being configuredto operate using different wireless communication protocols; executing avertical handoff from the second wireless network to the first wirelessnetwork if the signal of the first wireless network is detected;operating the wireless device in a scanning mode if the signal of thefirst wireless network is not detected, wherein operating the wirelessdevice in the scanning mode further comprises: scanning for a signal ofthe second wireless network while a user device is connected to thefirst wireless network, collecting location information about thelocation of the wireless device; comparing the location information tocoverage map information that indicates where coverage for a secondwireless network is available; determining whether the wireless deviceis located in a coverage area of the second wireless network; scanningfor a signal of a second wireless network if the wireless device islocated in a coverage area of the second wireless network; executing avertical handoff from the second wireless network to the first wirelessnetwork if the signal of the first wireless network is detected; andoperating the wireless device on the first wireless network for apredetermined period of time before again scanning for the signal of thesecond wireless network.

Other features and advantages of the embodiments described herein shouldbe apparent from the following description which illustrates, by way ofexample, aspects of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The details of the present embodiments, both as to its structure andoperation, may be gleaned in part by study of the accompanying drawings,in which like reference numerals refer to like parts, and in which:

FIG. 1 is a block diagram of a wireless communication network in whichthe systems and methods disclosed herein can be implemented according toan embodiment;

FIG. 2 is block diagram of a wireless router in which the systems andmethods disclosed herein can be implemented according to an embodiment;

FIG. 3 is a flow diagram of a subscriber-side method for scanning fornetwork connectivity according to an embodiment; and

FIG. 4 is a flow diagram of a subscriber-side method for scanning fornetwork connectivity according to an embodiment;

FIG. 5 is a flow diagram of a subscriber-side method for scanning fornetwork connectivity according to an embodiment; and

FIG. 6 is a flow diagram of a subscriber-side method for scanning fornetwork connectivity according to an embodiment.

DETAILED DESCRIPTION

Systems and methods are provided for performing efficient verticalhandoffs in a wireless user device. According to an embodiment, the userdevice can comprise a mobile phone, computer table, handheld computer,or other computer system capable of connecting to more than one mobilewireless network that use different wireless communication protocols.For example, the user device can be configured to connect to either a 3Gor a 4G network, and the user device can be configured to scan for a 4Gconnection while connected to a 3G network connection. Various efficientscanning methods are disclosed herein that are efficient in terms ofbattery usage, thermal performance, processing power, throughputperformance, or a combination thereof.

According to an embodiment, the user device can be configured tooperating as a WiFi hotspot for the one or more WiFi devices. In someembodiments, the user device can comprise a mobile wireless router.

According to some embodiments, subscriber-based scanning techniques areprovided for vertical handoff from a 3G to 4G network. In an embodiment,the user device can be configured to search for a 4G signal when theuser device is powered up. The user device can be configured toestablish a connection with the 4G network if a 4G network is available.In an embodiment, if the user device does not detect a 4G network but a3G network is available, the user device can be configured to connect tothe 3G network and periodically scan for a 4G network based on variouscriteria, which are described in detail in the various embodiments setforth below. In some embodiments, the scanning techniques depend on theenvironment where the user device is located, and in some embodiments,the scanning can be triggered depending on whether the user device is inmotion or remains in one location.

According to some embodiments, the user device can be configured to havea high scanning mode and a low scanning mode. In the high scanning mode,the user device scans more frequently for the 4G network than when thedevice is in the low scanning mode. In some embodiments, the user devicecan be configured to enter the high scanning mode when the user deviceis motion and configured to enter into the low scanning mode while thedevice is stationary or relatively stationary.

According to an embodiment, the techniques described herein can be usedto perform a vertical handoffs between WiMax (“WorldwideInteroperability for Microwave Access” which is part of the IEEE 802.16series of wireless broadband standards) and 1xEVDO Rev. A (DORA) withina multimode wireless user device. In some areas, WiMax 4G networks havebeen deployed as an overlay on top of existing 1xEVDO Rev. A 3Gnetworks. The design of these two types of networks did not include anefficient handoff scheme similar to what has been deployed for GPRS/UMTSnetworks or 1xEVDO Rev. A/LTE technologies (“3GPP Long Term Evolution”wireless communications standard).

FIG. 1 is a block diagram of a wireless communication network in whichthe systems and methods disclosed herein can be implemented according toan embodiment.

User device 110 can be a mobile device includes a WLAN interface thatallows one or more Wifi devices 115 to connect to the user device 110.According to some embodiments, the user device 110 can comprise a mobilephone, computer tablet, handheld computer, or other computer system thatis capable of operating as a WiFi hotspot for the one or more WiFidevices 115. In other embodiments, the mobile device can comprise amobile router, such as a MiFi™ portable wireless router by NovatelWireless. The user device 110 also includes a WWAN interface that allowsthe user device 110 to connect to base stations 130 or 135 or anotherwireless access point of a WWAN.

The user device 110 can include one or more WWAN interfaces that allowthe user device 110 to connect to one or more WWAN networks. Forexample, the user device 110 can include a WWAN interface that allowsthe user device 110 to establish connection to a 3G or 4G network. Insome embodiments, the user device 110 can include a WWAN interface thatcan be configured to connect to WWAN connections provided by differentWWAN network providers. For example, various mobile phone/data networkprovider may operate using different frequencies and/or communicationsstandards, and the user device 110 can include multiple WLAN interfacesor a configurable WLAN interface that enables the user device 110 toconnect to the networks of mobile phone/data network provider usingdifferent frequencies and/or communications standards. For example, theWWAN interface can be configured to implement one of the ThirdGeneration (3G) wireless communication protocols, such as EDGE,CDMA2000, or the Universal Mobile Telecommunications System (UMTS)protocols, High Speed Packet Access (HSPA) or HSPA+ protocols, Long TermEvolution (LTE) protocols, Evolution Data Optimization (EV-DO) rev. A(DORA), WiMAX, and/or other newer 4G protocols.

WiFi device 115 can be any sort of processor-enabled computing devicecapable of communicating wirelessly with user device 110. WiFi device115 can comprise, for example, a personal computer, a laptop computer, atablet computer, a handheld computer, personal digital assistant(“PDA”), telephone, workstation, or the like. The WiFi device 115includes a WLAN interface that allows the WiFi device 115 to communicatewith wireless user device 110.

Base stations 130 and 135 serves as a wireless access point for a WWANthat allows the user device 110 and other devices that are equipped withWWAN interfaces to connect to the network 140. The base stations 130 and135 provide access to network 140 to a plurality of user devices.According to an embodiment, base station 130 may provide a coverage areathat overlaps at least in part, the coverage area of base station 135.Furthermore, the base station 130 may be configured to provide 3Gcoverage while base station 135 is configured to provide 4G coverage, orvice versa. If the user device 110 moves from the coverage area of oneof the base stations to the coverage area of the other base station, ahandoff can be performed. In embodiments where one base station provides3G coverage and the other base station provide 4G coverage, a verticalhandoff between the base stations can be performed that allows the userdevice 110 to move from a 3G to 4G connection. A vertical handoff can betriggered by user device 110 in some embodiments or by the networkserver 160 in other embodiments. Some embodiment also provide forvertical handoffs from the 4G connection to a 3G connection as the userdevice 110 leaves a coverage area for 4G services for one where only 3Gservices are available.

Core network server 160 provides various network provider relatedservices to subscribers of a mobile network. In some embodiments, thecore network server can provide authentication of user devices 110 todetermine whether the user devices are authorized to use the networkservices provided by the network provider (e.g., is the user deviceassociated with a subscriber or authorized to roam on the networkprovider's network if not a subscriber). Core network server 160 canalso be configured to track the position of user device 110 relative toone or more base stations, such as base stations 130 and 135. The corenetwork server 160 can compare the location of the user device 110 tonetwork coverage map information that indicates where 3G and 4G coverageis available and send commands to the user device 110 to scan for 4Gcoverage if the device is located in or moving toward a coverage areawhere 4G service is provided.

Content server 150 provides content such as web pages, applications,and/or other network accessible content over the Internet. The WiFidevices 115 and/or user device 110 can request content from one or morecontent servers 150. The user device 110 routes requests received fromthe user device via the WLAN interface to base station 130, which inturn routes the requests for content to the content server 150 vianetwork 140. Network 140 can comprise one or more networks and can bethe Internet. Base stations 130 and 135 can be connected to the Internetvia one or more intermediate networks.

FIG. 2 is block diagram of a user device in which the systems andmethods disclosed herein can be implemented according to an embodiment.The user device 110 illustrated in FIG. 2 can be used to implement userdevice 110 illustrated in FIG. 1. In some embodiments, the user device110 can be a mobile device, such as a mobile phone, tablet computer,portable computer, portable device. In other embodiments, the userdevice 110 can comprise a mobile router that can be used to providemobile network access for WiFi devices that are configured to connect toa WLAN but are not configured to connect to a WWAN.

User device 110 includes a processor 210, a memory 220, a WiFi interface250, and a mobile network interface 260. The wireless router alsoincludes a WiFi interface module 230, a mobile network interface module235, a routing module 245, a coverage map module 255, a position module265, and a connection module 240 stored in memory 220. User device data295 and coverage map data 290 can also be stored in memory 220. Themobile device 110 also includes a motion sensor 280 and a GPS unit 285.

According to an embodiment, memory 220 comprises a non-transitory,tangible computer readable memory. Memory 220 can comprise persistentread-only memory (ROM), persistent read-write memory, such as flashmemory, non-persistent memory, such as random access memory (RAM), or acombination thereof. Memory 220 can include various modules that can beused to send and/or receive data using the WiFi interface 250 and themobile network interface 260. Memory 220 can also be used to store dataused by one or more of the modules, such as user device data 245.

WiFi network interface module 230 is configured to manage datacommunications over the wireless network via WiFi interface 250. TheWiFi interface 230 comprises at least one transmitter for transmittingdata to the one or more user device 110 via a WLAN connection with theone or more user device 110. The WiFi interface 230 also includes atleast one receiver for receiving data from the one or more WiFi devices115. WiFi network interface module 230 is configured to managetransmitting and receiving of data over the WiFi interface 250.According to an embodiment, WiFi interface 250 can include one or moreantennas for transmitting and/or receiving data via a WLAN connectionwith one or more WiFi devices 115.

Mobile network interface module 235 is configured to manage datacommunications between the user device 110 and the base station 130 viathe mobile network interface 260. The mobile network interface 260comprises at least one transmitter for transmitting data to base station130, base station 135, or other wireless access points via a WWANconnection with the base station 130, base station 135, or otherwireless access points provided by the WWAN network provider. The mobilenetwork interface 260 also includes at least one receiver for receivingdata from base station 130, base station 135, or other wireless accesspoints provided by the WWAN network provider. Mobile network interfacemodule 235 is configured to manage transmitting and receiving of dataover the mobile network interface 260. According to an embodiment,mobile network interface 260 can include one or more antennas fortransmitting and/or receiving data via a WWAN connection to the basestation 130, base station 135, or another wireless access point providedthe by the WWAN network provider. According to an embodiment, mobilenetwork interface module 235 can be configured to allow the user device110 to establish connection to a 3G or 4G network.

Routing module 245 can be configured route data received from the WiFidevice 115 via the WiFi interface 230 to remote devices, such as thecontent server 150, via mobile network interface 260. Routing module 245can also configured to route data received via the mobile networkinterface 260 to the WiFi devices 115. According to an embodiment, therouting module 245 can assign a network address, such as an IP address,to each WiFi device 115 that is connected to user device 110. Accordingto an embodiment, the routing module 245 can store information aboutwhich WiFi device 115 are connected to user device 110 in user devicedata store 295 in memory 220. This information can include networkaddresses associated with the WiFi device 115, and/or other informationabout the device, such as what type or class of device a user device 110is, and a Quality of Service (QoS) level associated with the userdevice.

Motion sensor 280 can be configured to detect motion of the user device110. Data from motion sensor 280 can be provided to the position module265. According to an embodiment, motion sensor 280 can comprise anaccelerometer, a gyroscopic sensor, or other type of sensor that can beused to detect that the user device 110 is being moved. Informationregarding the motion of the user device 110 can be used to predictwhether the user device 110 is going to move from the coverage area ofone base station to another and/or whether the user device 110 is goingto enter and/or leave a 3G or 4G coverage area.

Global Positioning System (GPS) unit 285 can be configured to providelocation and/or time information to the position module 265. providelocation and/or time information to the position module 265. GPS unit285 can be used to obtain location and/or time data from a globalnavigation satellite system. The location information obtained from GPSunit 285 can be used by the position module 265 to determine thelocation of the user device 110.

Position module 265 can be configured to receive motion sensor data frommotion sensor 280 and location and/or time information from GPS unit280. According to an embodiment, position module 265 can use the datafrom the motion sensor 280 and/or the GPS unit 280 to determine whetherthe user device 110 is moving. The position module 265 can be configuredto provide information including the current location of the user device110, whether the user device 110 is moving, how fast the user device 110is moving, and in what direction the user device 110 is moving to theconnection module 240. The position module 265 can also be configured toprovide information including the current location of the user device110, whether the user device 110 is moving, how fast the user device 110is moving, and in what direction the user device 110 is moving to thecoverage map module 255. According to an embodiment, the position module240 can determine the location of the user device 110 by throughmultilateration based on the signal strength to nearby base stations.

Coverage map module 255 can be configured to provide network coverageinformation based on the location of the user device 110. The networkcoverage information can include the location of nearby base stationsand identifying information associated with those base stations. Thenetwork coverage information can also include geographic informationthat indicates which geographic areas have 3G coverage and/or 4Gcoverage. In an embodiment, the connection module 240 can requestlocation and/or motion information for the user device 110 from theposition module 265. In an embodiment, the coverage map module 255 canuse the information received from the position module 265 to determinewhether the user device is in a 3G coverage area, 4G coverage area, oran area that includes both 3G and 4G coverage. In an embodiment, thecoverage map module can also be configured to determine whether the userdevice 110 is moving toward an area has 3G coverage, 4G coverage, both3G coverage and 4G coverage, or no coverage. In some embodiments,coverage map module 255 can use coverage map data 290 to determine thecurrent location of the user device based on nearby base stationsdetected by the user device 110. In some embodiments, the coverage mapdata 290 can be preinstalled on the user device 110. In otherembodiments, coverage map data can be downloaded by coverage map module255 based on the current location of the user device and the coveragemap module 255 can update the coverage map data 290 to include thedownloaded data. In other embodiments, the coverage map data 290 can beperiodically pushed to the user device 110 by the core network server160.

Connection module 240 can be configured to periodically scan for 4Gcoverage if the user device 110 is currently operating on a 3Gconnection. The connection module 240 can be configured to handlehandoffs between 3G and 4G networks. In an embodiment, the connectionmodule can be configured to scan for 4G coverage based on the locationof the user device 110 and/or the direction and/or speed a which theuser device is moving. In an embodiment, the connection module 240 canbe configured request position/motion from the position module 265 andto increase the frequency of scanning for 4G network connectivity if thedevice motion or if the device motion exceeds a predetermined threshold.In an embodiment, the connection module 240 can be configured to stopscanning for a 4G connection or to reduce the frequency of scanning fora 4G connection below a predetermined threshold frequency if the motionof the user device 110 falls below a predetermined speed or the userdevice 110 is stationary. In an embodiment, the connection module 240can be configured to request network map information from coverage map265 and to scan for 4G network connectivity if the user device 110 is anarea where 4G coverage is available but the device is currentlyoperating using a 3G connection. In an embodiment, the core networkserver 160 can be configured to track the location of the user device110 and to determine whether the user device 110 is entering a 4Gcoverage area. If the user device 110 is currently operating with a 3Gconnection, the core network server 160 can send a command to the userdevice 110 to scan for a 4G network. The connection module 240 can thenscan for the 4G network and perform a handoff if 4G connectivity isavailable.

Subscriber-Based Handoff

According to some embodiments, scanning for 4G connectivity and makingthe determination whether to perform a handoff can be performed by theuser device 110. Methods are described here whereby the user device 110can perform a vertical handoff from a 3G network to a 4G network. When adual-mode device, such as user device 110, is powered up, the userdevice 110 can be configured to search for a 4G signal. According to anembodiment, the connection module 240 can be configured to perform thissearch. If a 4G signal is available, the user device 110 can beconfigured to connect the 4G network. Otherwise, in the absence of a 4Gsignal, if a 3G signal is available, the user device 110 can beconfigured to connect to a 3G network and to initiate a scanning processfor the 4G network while operating using a 3G network connection.

Conventional implementations for dual-mode 3G and 4G devices continuallyscan for a 4G signal while connected to a 3G network. This approach canhave a significant impact on the performance of these conventionaldevices, because continually scanning is not efficient in terms ofbattery usage, thermal performance, processing power, and in someinstances, throughput performance.

The various methods disclosed herein employ scanning algorithms thatcontrol the frequency at which a user device 110 scans for 4Gconnectivity while connected to a 3G network. These methods cansignificantly decrease the battery usage for the user device 110. Thesemethods can also increase thermal performance, processing power,increase throughput performance for the device, or a combinationthereof, by selectively scanning for a 4G signal based on variousinformation, such as the location of the user device 110, whether thedevice is stationary, and how fast and/or in what direction that userdevice 110 is moving. In some embodiments, the user device 110 can usecoverage map information in conjunction with the location and/or themovement of the user device to determine whether to scan for a 4Gnetwork.

FIGS. 3 and 4 illustrate two methods for scanning for a 4G network thatcan be implemented by a user device, such as user device 110. Themethods illustrated in FIGS. 3 and 4 can be executed by a dual-mode userdevice 110 that is currently connected to a 3G network to efficientlyscan for a 4G network and execute a unilateral handoff procedure toswitch from the 3G to the 4G network without requiring networkinvolvement in the scanning process. According to an embodiment, theuser device 110 can be configured to scan for the 4G network at the timethat the device is powered up, and if no 4G network is found, but a 3Gnetwork is discovered by the user device 110, the user device 110 canconnect to the 3G network and periodically scan for 4G networkavailability. According to an embodiment, the methods illustrated inFIGS. 3 and 4 can both be implemented on the user device 110 to increasethe likelihood that the user device 110

FIG. 3 is a flow diagram of a method for subscriber-based verticalhandoffs according to an embodiment. In an embodiment, the stepsincluded in the method illustrated in FIG. 3 can be performed by theconnection module 240 of the user device 110, unless otherwisespecified.

The connection module 240 can scan for a 4G network (step 305). Theconnection module 240 then makes a determination whether the 4G networkdetected (step 310). If the 4G network was detected, the connectionmodule can initiate a unilateral handoff between the 3G network and the4G network (step 315).

However, if the 4G network was not detected the connection module 240can collect information about the location of the user device 110 (step320). In an embodiment, the connection module 240 can request theposition information from the position module 265. For example, theposition module 240 can use the servicing cell ID to determine anapproximate location of the user device 110. In some embodiments, thecell identifier associated with other nearby base stations. According toan embodiment, position module 265 can provide GPS coordinates orestimated coordinates for the device to the collection module 240.Additional information, such as the location of the user device 110 canalso be obtained from GPS unit 280.

The user device 110 can also be configured to estimate user devicemobility based on the location information collected (step 325).According to an embodiment, the position module 265 can be configured toreceive motion sensor data from motion sensor 280 and locationinformation from GPS unit 280 and determine whether the user device 110is moving and position module 265 can be configured to estimate how fastthe user device 110 is moving based on the motion sensor data, GPSlocation information, or a combination thereof. If the user device 110is moving, the device may be moving into an area where 4G coverage isprovided. The user device 110 can be configured to increase the rate ofscanning for the 4G network if the user device 110 is moving.

The connection module 240 can make determination whether user device ismoving based on the estimates provided by the position module 265 (step330). If the rate of motion of the user device 110 is high, the rate ofscanning can be increased, and if the rate of motion of the user device110 is low, the rate of scanning of the user device can be decreased.

If user device is moving, the connection module 240 can be configured toscan for 4G network at rate that is proportional to rate of motion (step335). If the user device 110 is in motion, the user device 110 may moveinto a coverage area where 4G service is provided. The faster that theuser device 110 is moving in an area where no 4G coverage is present,the more likely that the user device might enter into a different areawhere 4G coverage may be available. For example, if the user device 110is moving in a car or other vehicle at freeway speeds, the user device110 is likely to exit the current coverage area relatively quickly andenter into the coverage area of a different base station that provides4G coverage. Therefore, increasing rate at which the user device 110scans for a 4G network in proportion to the rate of speed at which theuser device 110 is moving may result in the user device discovering a 4Gconnection, because the user device 110 is likely to enter into adifferent coverage area that may provide 4G coverage.

According to an embodiment, if the user device 110 is stationary ormoving less than a predetermined threshold rate, the user device 110 canbe configured scan for the 4G network at a reduced rate or not at all(step 340). The step relies on the assumption that if the user device110 is not moving or is moving relatively slowly, the user device 110 isnot likely to move from an area where only 3G coverage is provided to anarea where 4G coverage is provided. Therefore, the connection module 240can reduce the rate at which the user device 110 scans for 4G coverageor stop scanning for 4G coverage at all (or at least until apredetermined period of time elapses). This allows the user device 110to conserve battery power by not scanning for 4G coverage in situationswhere the user device 110 is not likely to encounter 4G service.

The method can return to step 310 where the user device 110 candetermine whether a 4G network is detected based on the scans performedin step 335 or 340 (step 310). If a 4G network was detected, theconnection module can initiate a unilateral handoff between the 3Gnetwork and the 4G network (step 315). Otherwise, if no 4G networkconnection is detected, the method can return step 320 where the userdevice 110 can collect information about the location of the user device110.

FIG. 4 is a flow diagram of a method for subscriber-based verticalhandoffs according to an embodiment. In an embodiment, the stepsincluded in the method illustrated in FIG. 4 can be performed by theconnection module 240 of the user device 110, unless otherwisespecified. In contrast with the method illustrated in FIG. 3, the methodillustrate in FIG. 4 uses the coverage map information to determinewhether the user device 110.

If the user device 110 did not detect a 4G network upon powering up, theconnection module 240 can collect information about the location of theuser device 110 (step 420). In an embodiment, the connection module 240can request the position information from the position module 265. Thisstep is similar to that described in step 320 of FIG. 3. For example,the position module 240 can use the servicing cell ID to determine anapproximate location of the user device 110. In some embodiments, thecell identifier associated with other nearby base stations. According toan embodiment, position module 265 can provide GPS coordinates orestimated coordinates for the device to the collection module 240.Additional information, such as the location of the user device 110 canalso be obtained from GPS unit 280.

The location information for the user device 110 can then be compared tocoverage maps to determine whether the user device 110 is located where4G coverage is provided (step 425). According to an embodiment, theconnection module 240 can provide the location information obtained fromthe position module 265 to the coverage map module 255. The coverage mapmodule 255 can then look up what type of coverage is available for thelocation of the user device 110 in the coverage map data 290. Accordingto some embodiments, the coverage map module 255 can request coveragemap information from the core network server 160. In some embodiments,the coverage map module 255 can store the coverage map informationreceived from the core network server 160 in coverage map data 290.

The connection module 240 can make a determination whether there is 4Gcoverage available near the location of the user device 110, so that theuser device 110 might be able to connect to the 4G network (step 430).If 4G network coverage is provided near the location of the user device110, the connection module 240 can scan for a 4G network signal (step440). The connection module can then make a determination whether a 4Gnetwork signal has been detected (step 450). If a 4G network signal isdetected, the connection module 440 can execute a unilateral handofffrom the 3G network to the 4G network (step 460).

If no 4G network coverage is nearby or no 4G network signal is detectedwhen searching for a 4G network that is supposed to be nearby, theconnection module 240 can continue operating on the 3G network for apredetermined time period (step 435) before returning to step 420 tocontinue the scanning process. According to an embodiment, theconnection module 240 operates on the 3G network for a predeterminedperiod of time before scanning for 4G coverage again to conserve batterycan decrease the battery usage for the user device 110, and can alsoincrease thermal performance, processing power, increase throughputperformance, or a combination thereof, for the device.

Network Assisted Handoff

According to some embodiments, the network can assist the user device inmaking a determination whether to scan for 4G connectivity. Methods aredescribed here whereby a user device 110 can scan for 4G connectivitybased on instructions received from the core network server 160 and theuser device 110 can perform a vertical handoff to a 4G network if a 4Gnetwork is detected.

FIG. 5 is a method that can be used track the location of a user deviceand instruct the user device to perform a vertical handoff from a 3G toa 4G network according to an embodiment. In an embodiment, the methodillustrated in FIG. 5 can be implemented by core network server 160.

The core network server 160 can determine the location of a user device110 (step 505). The core network server 160 can use various techniquesto determine the location of the user device 110. For example, the corenetwork server 160 can use the servicing cell ID to determine anapproximate location of the user device 110. In some embodiments, thecore network server 160 can send a location request message to the userdevice via network 140 to the base station to which the user device isconnected, and the base station can send the location informationrequest to the user device 110. The connection module 240 can beconfigured to request location information from position module 245 inresponse to the location information request. The connection module 240can then send a location information response to the core network server160 that includes the location of the user device 110. The locationinformation response can include positional information as wellinformation indicating whether the user device 110 is moving, includingthe direction and speed of movement in some embodiments.

The core network server 160 can then access coverage map data stored onthe core network server 160 and/or on other servers operated by themobile network provider (step 510). The core network server 160 can beconfigured to query a coverage map data store using location informationfor the user device determined by the core network server 160, obtainedfrom the user device 110, or a combination thereof.

The core network server 160 can then determine whether 4G networkcoverage is available near the location of the user device 110 based onthe coverage map data obtained from the coverage map data store (step515). If the coverage map information indicates that the user device 110is located in an area where 4G coverage is available, the core networkserver 160 can send a network search command to the user device 110instructing the user device 110 to begin a search for a 4G networksignal and to initiate a handoff to the 4G network if the user device110 detects the 4G network signal (step 520). Otherwise, if the userdevice 110 is not located in area where 4G coverage is available, thecore network server 160 can wait a predetermined period of time beforechecking the location of the user device again (step 525). By waitingfor a period of time, before checking the location of the user device,the user device 110 may have moved sufficiently to have entered a 4Gcoverage area. According to some embodiments, the length of time thatthe core network server 160 waits before checking the location of theuser device 110 can be proportional to the rate of motion of the userdevice 110. According to an embodiment, the core network server 160 canestimate the rate of motion of the user device 110 by comparingpreviously obtained location information for the user device. Accordingto an embodiment, the information response received from the user device110 can also include information indicating how fast the user device 110was moving at the time the response was generated, the direction thatthe user device 110 was moving at the time the response was generated,or a combination thereof.

FIG. 6 is a network-assisted method for scanning for a 4G networkaccording to an embodiment. According to an embodiment, the methodillustrated in FIG. 6 can be implemented by the user device 110. Forexample, in an embodiment, the connection module 240 can implement thesteps illustrated in the method of FIG. 6. According to an embodiment,the network-assisted method illustrated in FIG. 6 can be used inconjunction with one or both of the methods illustrated in FIGS. 3 and 4described above.

The user device 110 can receive an instruction to begin scanning for asignal of a 4G network (step 605). According to an embodiment, if thecore network server 160 determines that the user device 110 is locatedin an area where 4G coverage is available, the core network server 160can send a network search command to the user device 110 instructing theuser device 110 to begin a search for a 4G network signal and toinitiate a handoff to the 4G network if the user device 110 detects the4G network signal.

In response to the network search command, the user device 110 can scanfor a signal of a 4G network (step 610). According to an embodiment, theconnection module 240 can scan for a 4G network signal. The connectionmodule can then make a determination whether a 4G network signal hasbeen detected (step 615). If a 4G network signal is detected, theconnection module 440 can execute a unilateral handoff from the 3Gnetwork to the 4G network (step 620). If no 4G network signal isdetected, the connection module 240 can continue operating the userdevice 110 using a 3G connection. Optionally, the connection module 240can send a message to the core network server 160 indicating whether theconnection module 240 was able to detect the 4G network and perform ahandoff.

Those of skill will appreciate that the various illustrative logicalblocks, modules, units, and algorithm steps described in connection withthe embodiments disclosed herein can often be implemented as electronichardware, computer software, or combinations of both. To clearlyillustrate this interchangeability of hardware and software, variousillustrative components, units, blocks, modules, and steps have beendescribed above generally in terms of their functionality. Whether suchfunctionality is implemented as hardware or software depends upon theparticular system and design constraints imposed on the overall system.Skilled persons can implement the described functionality in varyingways for each particular system, but such implementation decisionsshould not be interpreted as causing a departure from the scope of theinvention. In addition, the grouping of functions within a unit, module,block or step is for ease of description. Specific functions or stepscan be moved from one unit, module or block without departing from theinvention.

The various illustrative logical blocks, units, steps and modulesdescribed in connection with the embodiments disclosed herein can beimplemented or performed with a general purpose processor, a digitalsignal processor (DSP), an application specific integrated circuit(ASIC), a field programmable gate array (FPGA) or other programmablelogic device, discrete gate or transistor logic, discrete hardwarecomponents, or any combination thereof designed to perform the functionsdescribed herein. A general-purpose processor can be a microprocessor,but in the alternative, the processor can be any processor, controller,microcontroller, or state machine. A processor can also be implementedas a combination of computing devices, for example, a combination of aDSP and a microprocessor, a plurality of microprocessors, one or moremicroprocessors in conjunction with a DSP core, or any other suchconfiguration.

The steps of a method or algorithm and the processes of a block ormodule described in connection with the embodiments disclosed herein canbe embodied directly in hardware, in a software module (or unit)executed by a processor, or in a combination of the two. A softwaremodule can reside in RAM memory, flash memory, ROM memory, EPROM memory,EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or anyother form of machine or computer readable storage medium. An exemplarystorage medium can be coupled to the processor such that the processorcan read information from, and write information to, the storage medium.In the alternative, the storage medium can be integral to the processor.The processor and the storage medium can reside in an ASIC.

Various embodiments may also be implemented primarily in hardware using,for example, components such as application specific integrated circuits(“ASICs”), or field programmable gate arrays (“FPGAs”). Implementationof a hardware state machine capable of performing the functionsdescribed herein will also be apparent to those skilled in the relevantart. Various embodiments may also be implemented using a combination ofboth hardware and software.

The above description of the disclosed embodiments is provided to enableany person skilled in the art to make or use the invention. Variousmodifications to these embodiments will be readily apparent to thoseskilled in the art, and the generic principles described herein can beapplied to other embodiments without departing from the spirit or scopeof the invention. Thus, it is to be understood that the description anddrawings presented herein represent a presently preferred embodiment ofthe invention and are therefore representative of the subject matter,which is broadly contemplated by the present invention. It is furtherunderstood that the scope of the present invention fully encompassesother embodiments that may become obvious to those skilled in the art.

1. A method for managing network connectivity of a wireless device, themethod comprising: scanning for a signal of a first wireless networkwhile the wireless device is connected to a second wireless network, thefirst wireless network and the second wireless network being configuredto operate using different wireless communication protocols; executing avertical handoff from the second wireless network to the first wirelessnetwork if the signal of the first wireless network is detected;operating the wireless device in a scanning mode if the signal of thefirst wireless network is not detected, wherein operating the wirelessdevice in the scanning mode further comprises collecting informationabout the location of the wireless device, estimating mobility of thewireless device based on the location information, determining whetherthe wireless device is mobile, scanning for the signal of the firstwireless network at a rate proportional to a rate of mobility associatedwith the wireless device if the wireless device is mobile, and scanningfor the signal of the first wireless network at a reduced rate if thewireless device is not mobile.
 2. The method of claim 2 whereincollecting information about the location of the wireless deviceincludes receiving data from a motion sensor associated with thewireless device.
 3. The method of claim 2 wherein collecting informationabout the location of the wireless device includes receiving locationinformation from a GPS unit associated with the wireless device.
 4. Themethod of claim 2 wherein collecting information about the location ofthe wireless device includes determining a serving cell identifierassociated with a base station providing wireless service to thewireless device.
 5. The method of claim 4 wherein estimating mobility ofthe wireless device based on the location information further comprisescomparing a previous serving cell identifier to a current serving cellidentifier to determine whether the wireless device is moving.
 6. Amethod for managing network connectivity of a wireless device, thewireless device being connected to a first wireless network andconfigured to scan for a signal of a second wireless network, the firstwireless network and the second wireless network being configured tooperate using different wireless communication protocols, the methodcomprising: scanning for a signal of the second wireless network whilethe wireless device is connected to the first wireless network,collecting location information about the location of the wirelessdevice; comparing the location information to coverage map informationthat indicates where coverage for a second wireless network isavailable; determining whether the wireless device is located in acoverage area of the second wireless network; scanning for a signal of asecond wireless network if the wireless device is located in a coveragearea of the second wireless network; executing a vertical handoff fromthe second wireless network to the first wireless network if the signalof the first wireless network is detected; operating the wireless deviceon the first wireless network for a predetermined period of time beforeagain scanning for the signal of the second wireless network.
 7. Themethod of claim 6 wherein collecting information about the location ofthe wireless device includes receiving data from a motion sensorassociated with the wireless device.
 8. The method of claim 6 whereincollecting information about the location of the wireless deviceincludes receiving location information from a GPS unit associated withthe wireless device.
 9. The method of claim 6 wherein collectinginformation about the location of the wireless device includesdetermining a serving cell identifier associated with a base stationproviding wireless service to the wireless device.
 10. The method ofclaim 9 wherein estimating mobility of the wireless device based on thelocation information further comprises: comparing a previous servingcell identifier to a current serving cell identifier to determinewhether the wireless device is moving.
 11. A method for managing networkconnectivity of a wireless device from a remote server, the wirelessdevice being connected to a first wireless network and configured toscan for a signal of a second wireless network, the first wirelessnetwork and the second wireless network being configured to operateusing different wireless communication protocols, the server beingconfigured to perform the method comprising: determining the location ofa the wireless device, accessing coverage map information that indicateswhere coverage for the second wireless network is available, comparingthe location information to coverage map information that indicateswhere coverage for a second wireless network is available, and sending anetwork search command to the user device to scan for a signal of thesecond wireless network and to initiate a vertical handoff from thefirst network to the second network if the signal from the secondwireless network is detected.
 12. The method of claim 11, whereindetermining the location of the wireless device further comprisesdetermining a serving cell identifier associated with a base stationproviding wireless service to the wireless device.
 13. The method ofclaim 11, wherein determining the location of the wireless devicefurther comprises: sending a location information request to thewireless device requesting that the wireless device provide locationinformation; and receiving a location information response from thewireless device that includes location information for the wirelessdevice.
 14. The method of claim 13 wherein the location informationresponse includes a serving cell identifier associated with a basestation providing wireless service to the wireless device.
 15. Themethod of claim 13 wherein the location information response includesgeographical coordinates associated with the location of the userdevice.
 16. The method of claim 13 wherein the location informationresponse includes at least one of rate of motion and direction of motionof the user device.
 17. A method for managing network connectivity of awireless device from a remote server, the wireless device beingconnected to a first wireless network and configured to scan for asignal of a second wireless network, the first wireless network and thesecond wireless network being configured to operate using differentwireless communication protocols, the wireless device being configuredto perform the method comprising: receiving a network search commandfrom a remote server instructing the wireless device to scan for asignal of the second wireless network and to initiate a vertical handofffrom the first network to the second network if the signal from thesecond wireless network is detected; scanning for a signal of a secondwireless network if the wireless device is located in a coverage area ofthe second wireless network; executing a vertical handoff from thesecond wireless network to the first wireless network if the signal ofthe first wireless network is detected; operating the wireless device ina scanning mode if the signal of the first wireless network is notdetected.
 18. The method of claim 17, further comprising: receiving alocation information request from the remote server requesting that thewireless device provide location information; and sending a locationinformation response to the remote server from the wireless device thatincludes location information for the wireless device.
 19. The method ofclaim 18 wherein the location information response includes a servingcell identifier associated with a base station providing wirelessservice to the wireless device.
 20. The method of claim 18 wherein thelocation information response includes geographical coordinatesassociated with the location of the user device.
 21. The method of claim18 wherein the location information response includes at least one ofrate of motion and direction of motion of the user device.
 22. Awireless device configured to connect a first wireless network and asecond wireless network, the first wireless network and the secondwireless network being configured to operate using different wirelesscommunication protocols, the wireless device comprising: a mobilenetwork interface comprising a transmitter configured to transmit datato a wireless access point of a wireless wide area network (WWAN) and areceiver configured to receive data from the wireless access point; anon-transitory computer readable medium configured to store executableprogrammed modules; a processor communicatively coupled with thenon-transitory computer readable medium configured to execute programmedmodules stored therein; a mobile network interface module stored in thenon-transitory computer readable medium and configured to manage datacommunications between the wireless router and the wireless access pointuser devices using the mobile network interface; and a connection modulestored in the non-transitory computer readable medium and the connectionbeing configured to perform the steps of scanning for a signal of thesecond wireless network while the wireless device is connected to thefirst wireless network, collecting location information about thelocation of the wireless device; comparing the location information tocoverage map information that indicates where coverage for a secondwireless network is available, determining whether the wireless deviceis located in a coverage area of the second wireless network, scanningfor a signal of a second wireless network if the wireless device islocated in a coverage area of the second wireless network, executing avertical handoff from the second wireless network to the first wirelessnetwork if the signal of the first wireless network is detected, andoperating the wireless device on the first wireless network for apredetermined period of time before again scanning for the signal of thesecond wireless network.
 23. The wireless device of claim 22 whereincollecting information about the location of the wireless deviceincludes receiving data from a motion sensor associated with thewireless device.
 24. The wireless device of claim 22 wherein collectinginformation about the location of the wireless device includes receivinglocation information from a GPS unit associated with the wirelessdevice.
 25. The wireless device of claim 22 wherein collectinginformation about the location of the wireless device includesdetermining a serving cell identifier associated with a base stationproviding wireless service to the wireless device.
 26. A wireless deviceconfigured to connect a first wireless network and a second wirelessnetwork, the first wireless network and the second wireless networkbeing configured to operate using different wireless communicationprotocols, the wireless device comprising: a mobile network interfacecomprising a transmitter configured to transmit data to a wirelessaccess point of a wireless wide area network (WWAN) and a receiverconfigured to receive data from the wireless access point; anon-transitory computer readable medium configured to store executableprogrammed modules; a processor communicatively coupled with thenon-transitory computer readable medium configured to execute programmedmodules stored therein; a mobile network interface module stored in thenon-transitory computer readable medium and configured to manage datacommunications between the wireless router and the wireless access pointuser devices using the mobile network interface; and a connection modulestored in the non-transitory computer readable medium and the connectionbeing configured to perform the steps of scanning for a signal of afirst wireless network while the wireless device is connected to asecond wireless network, the first wireless network and the secondwireless network being configured to operate using different wirelesscommunication protocols; executing a vertical handoff from the secondwireless network to the first wireless network if the signal of thefirst wireless network is detected; operating the wireless device in ascanning mode if the signal of the first wireless network is notdetected, wherein operating the wireless device in the scanning modefurther comprises scanning for a signal of the second wireless networkwhile a user device is connected to the first wireless network,collecting location information about the location of the wirelessdevice; comparing the location information to coverage map informationthat indicates where coverage for a second wireless network isavailable; determining whether the wireless device is located in acoverage area of the second wireless network; scanning for a signal of asecond wireless network if the wireless device is located in a coveragearea of the second wireless network; executing a vertical handoff fromthe second wireless network to the first wireless network if the signalof the first wireless network is detected; operating the wireless deviceon the first wireless network for a predetermined period of time beforeagain scanning for the signal of the second wireless network.
 27. Thewireless device of claim 26 wherein collecting information about thelocation of the wireless device includes receiving data from a motionsensor associated with the wireless device.
 28. The wireless device ofclaim 26 wherein collecting information about the location of thewireless device includes receiving location information from a GPS unitassociated with the wireless device.
 29. The wireless device of claim 26wherein collecting information about the location of the wireless deviceincludes determining a serving cell identifier associated with a basestation providing wireless service to the wireless device.